#pragma once
#include <boost/exception/all.hpp>
#include <string>

typedef boost::error_info<struct tag_my_info,std::string> JErrorInfo;
struct JException : virtual boost::exception
{
};

typedef boost::error_info<struct tag_my_info,std::string> JFileErrorInfo;
struct JFileException : virtual JException
{
};


typedef boost::error_info<struct tag_my_info,std::string> JFileNotExistErrorInfo;
struct JFileNotExistException : virtual JFileException
{
};


typedef boost::error_info<struct tag_my_info,std::string> JFileReadErrorInfo;
struct JFileReadException : virtual JFileException
{
};

